package com.mall.cart.server.service;

import com.mall.cart.common.domain.Cart;
import com.mall.cart.common.domain.CartItem;
import com.mall.common.core.domain.Result;

import java.util.List;

public interface CartService {

    /**
     * 添加购物车
     * @param cartItem
     * @return
     */
    Result addCart(CartItem cartItem);

    /**
     * 添加购物车详情redis
     * @param skuId
     * @return
     */
    Result add(Long skuId);

    /**
     * 查询购物车列表
     * @return
     */
    Result<List<Cart>> findCartList();

    /**
     * 根据skuId字符串删除缓存以及数据库数据
     * @param skuIdListByJson
     */
    void clearCartByPay(String skuIdListByJson);


    /**
     * 根据skuId 查询redis并修改
     * @param skuId
     * @param skuCount
     */
    Result updateSaleCount(Integer skuId, Integer skuCount);
}
